Open
Conversation
* Low priority private access * Low priority delivery/destination access * Check weight limit
* In JTSTriangulator, use DelaunayTriangulationBuilder instead of Confo…
* Simplify property saving * Allow to store multiple segments * Allow to load multiple segments * Add test case for high amount of props * Use try-with-resources * bytePos iter * Check capacity
…dge-based CH alternatives (#3139) * test * fix * remove test generator
[compacted](https://wiki.openstreetmap.org/wiki/Tag:surface=compacted?uselang=en-GB) surface type should have similar speed to gravel and ground.
* do not apply smoothness if penalty was already done via surface * or pick the smallest of surface vs smoothness? * review comments
* cycleway encoded value * docs
* implement simple heuristic to automatically force curbside 'right' for bigger roads to avoid crossing the road * move one method up * comment * remove MOTORWAY; is not used for curbside and might be confusing
Add the ability for map matching to U-turn at directed candidate pairs (same snap point, opposite directions) with a configurable cost penalty, instead of only at intersections. This produces shorter, more accurate matched routes when the GPS trace reverses direction near a candidate. Also add comprehensive debug output (MatchDebugInfo) and a standalone HTML visualizer that shows candidates, transitions, U-turns, and the matched route on a Leaflet map. Remove normalization constants from log-probability distributions for cleaner debug values. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move the debug visualizer template HTML from test resources and web-bundle into map-matching/tools/, alongside a new Python CLI tool (mapmatch.py) that posts GPX files to the map-matching API and visualizes results in the browser. The CLI supports chunking large files, selecting point ranges, and --debug mode which uses the template to render the full debug visualization. Remove the duplicate debug.html from web-bundle (was a jQuery-based variant of the same visualizer) and simplify the test to only assert on debug info correctness without generating HTML files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Rename file after successful download * Use a fixed user agent
…hortcut weights (#3297) * Scale up weights by x10 + round * Fix most tests that simply need to expect x10 weights now. * All algos need to use query graph weighting to route on query graph * We have to use x10 whenever we use setMaximumLMWeight * Adjust heuristic in alternative path algos (weights are up x10 -> scale factor down x10) * Scale down CH shortcut weights * Remove weight tolerance and lower time tolerance * use random chains for strict checks with edge-based routing and finite u-turn costs * Implement weight and time adjustment for virtual edges * green * misc * make corrections smaller * issue number * comment * reject NaN weights and infinite shortcuts * remove low weight shortcut * increase shortcut version * what if we did not adjust weights? * Revert "what if we did not adjust weights?" This reverts commit 1701eb6. * Speed up Weighting#roundWeight
Verifies that QueryGraphWeighting forbids u-turns at inner virtual nodes (snap points along an edge) while allowing straight-through traversal at zero cost. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…-turn costs WeightDetails.isEdgeDifferentToLastEdge() was setting edgeId to the current edge *before* passing it to calcWeightWithTurnWeight as the "previous edge" parameter. This caused every weight detail segment to include a u-turn penalty (current edge -> same edge), inflating per-segment weights by the u-turn cost (e.g. ~1800s). Fix follows the same pattern as TimeDetails: pass the previous edge ID first, then update it to the current edge. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The turn cost for transitioning from edge A to edge B is included in edge B's weight detail segment. The first segment never includes a turn cost (no previous edge). This matches the behavior of TimeDetails. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please read our contributing guide and note that also your contribution falls under the Apache License 2.0 as outlined there.
Your first contribution should include a change where you add yourself to the CONTRIBUTORS.md file.